function b = neville1 (a,x, y)

	% Intrari:
	% a = abscisa în care se calculeaza polinomul Lagrange
	% x = tabloul absciselor celor n+1 puncte
	% y = tabloul ordonatelor celor n+1 puncte
	% Iesiri:
	% b = valoare polinom de interpolare

   	n = length(x)-1;
   	q = zeros( n+1, n+1 );
	q(:, 1 ) = y(:)
   	for i = 1 : n
    		for j = 1 : i
       			q( i+1, j+1 ) = ( ( a - x( i-j +1) ) * q(i+1, j ) - ( a - x( i+1 ) ) * q( i,j) ) / ( x(i+1 ) - x( i-j +1) );
			
    		endfor
   	endfor
	b=q(n+1,n+1);

endfunction

